package com.bestcem.xm.ticket.entity.mysql;

import com.bestcem.xm.ticket.enums.TicketRecordEventEnum;
import com.bestcem.xm.ticket.enums.TicketRecordSourceEnum;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 记录工单的各个进度
 * 一个工单对应多条记录
 *
 * @author XiaoYunSong <ys.xiao@idiaoyan.com>
 * @version v1.0
 * @date 2021/8/10 16:13
 */
@ToString(callSuper = true)
@Getter
@Setter
public class TicketRecordDO extends BaseDO {
    private static final long serialVersionUID = 1L;

    /**
     * 实体标识
     */
    private String ticketRecordId;

    /**
     * 工单所属租户id
     */
    private String orgId;

    /**
     * 操作人id
     */
    private String userId;

    /**
     * 日志标题
     */
    private String title;

    /**
     * 工单id
     */
    private String ticketId;

    /**
     * 接受转派的角色id
     */
    private String roleId;

    /**
     * 接受转派的层级id
     */
    private String region;

    /**
     * 接受转派的层级名称
     */
    private String regionName;

    /**
     * 操作人姓名
     */
    private String userName;

    /**
     * 操作类型
     *
     * @see TicketRecordSourceEnum
     */
    private Integer source;

    /**
     * 工单事件
     *
     * @see TicketRecordEventEnum
     */
    private Integer event;

    /**
     * 处理模板定义字段
     */
    private String customAttr;

    /**
     * 问卷id
     */
    private String surveyId;

    /**
     * 工单状态
     */
    private Integer ticketStatus;

    /**
     * 原因。
     */
    private String reason;

    /**
     * 接受转派的用户id
     */
    private String receiveUserId;

    /**
     * 接受转派的用户名字
     */
    private String receiveUserName;

    /**
     * 接受工单的角色id
     */
    private String receiveRoleId;

    /**
     * 接受工单的角色名
     */
    private String receiveRoleName;

    /**
     * 接受工单的层级名
     */
    private String receiveRegionName;

    /**
     * 接受工单的层级id
     */
    private String receiveRegionId;

    /**
     * 是否是sample数据
     */
    private Boolean sample;
}
